package com.yellowpage.ndc.data;

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.hibernate.annotations.GenericGenerator;

/**
 * Address entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "db_ndc.ADDRESS" )
public class Address implements java.io.Serializable {

	// Fields

	private Long addrId;
	private String regionCode;
	private String addr;
	private String addrBrief;
	private Integer addrNum;
	private String addrLast;
	private String zip;
	private String pyAddr;
	private String engAddr;
	private Date modifyTime;
	private Long modifyEmpId;
	private Double poix;
	private Double poiy;

	// Constructors

	/** default constructor */
	public Address() {
	}

	/** minimal constructor */
	public Address(String regionCode, String addrBrief) {
		this.regionCode = regionCode;
		this.addrBrief = addrBrief;
	}

	/** full constructor */
	public Address(String regionCode, String addr, String addrBrief,
			Integer addrNum, String addrLast, String zip, String pyAddr,
			String engAddr, Date modifyTime, Long modifyEmpId, Double poix,
			Double poiy) {
		this.regionCode = regionCode;
		this.addr = addr;
		this.addrBrief = addrBrief;
		this.addrNum = addrNum;
		this.addrLast = addrLast;
		this.zip = zip;
		this.pyAddr = pyAddr;
		this.engAddr = engAddr;
		this.modifyTime = modifyTime;
		this.modifyEmpId = modifyEmpId;
		this.poix = poix;
		this.poiy = poiy;
	}

	// Property accessors
	@GenericGenerator(name = "generator", strategy = "identity")
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "ADDR_ID", unique = true, nullable = false, precision = 18, scale = 0)
	public Long getAddrId() {
		return this.addrId;
	}

	public void setAddrId(Long addrId) {
		this.addrId = addrId;
	}

	@Column(name = "REGION_CODE", nullable = false, length = 6)
	public String getRegionCode() {
		return this.regionCode;
	}

	public void setRegionCode(String regionCode) {
		this.regionCode = regionCode;
	}

	@Column(name = "ADDR", length = 256)
	public String getAddr() {
		return this.addr;
	}

	public void setAddr(String addr) {
		this.addr = addr;
	}

	@Column(name = "ADDR_BRIEF", nullable = false, length = 128)
	public String getAddrBrief() {
		return this.addrBrief;
	}

	public void setAddrBrief(String addrBrief) {
		this.addrBrief = addrBrief;
	}

	@Column(name = "ADDR_NUM", precision = 6, scale = 0)
	public Integer getAddrNum() {
		return this.addrNum;
	}

	public void setAddrNum(Integer addrNum) {
		this.addrNum = addrNum;
	}

	@Column(name = "ADDR_LAST", length = 128)
	public String getAddrLast() {
		return this.addrLast;
	}

	public void setAddrLast(String addrLast) {
		this.addrLast = addrLast;
	}

	@Column(name = "ZIP", length = 6)
	public String getZip() {
		return this.zip;
	}

	public void setZip(String zip) {
		this.zip = zip;
	}

	@Column(name = "PY_ADDR", length = 16)
	public String getPyAddr() {
		return this.pyAddr;
	}

	public void setPyAddr(String pyAddr) {
		this.pyAddr = pyAddr;
	}

	@Column(name = "ENG_ADDR", length = 128)
	public String getEngAddr() {
		return this.engAddr;
	}

	public void setEngAddr(String engAddr) {
		this.engAddr = engAddr;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "MODIFY_TIME", length = 0)
	public Date getModifyTime() {
		return this.modifyTime;
	}

	public void setModifyTime(Date modifyTime) {
		this.modifyTime = modifyTime;
	}

	@Column(name = "MODIFY_EMP_ID", precision = 18, scale = 0)
	public Long getModifyEmpId() {
		return this.modifyEmpId;
	}

	public void setModifyEmpId(Long modifyEmpId) {
		this.modifyEmpId = modifyEmpId;
	}

	@Column(name = "POIX", precision = 9, scale = 6)
	public Double getPoix() {
		return this.poix;
	}

	public void setPoix(Double poix) {
		this.poix = poix;
	}

	@Column(name = "POIY", precision = 9, scale = 6)
	public Double getPoiy() {
		return this.poiy;
	}

	public void setPoiy(Double poiy) {
		this.poiy = poiy;
	}

}